<?php
/*
Module:		BC
Version:	20071128a-DAT
File:		run.php
*/

if(strtoupper($args[0]) == '!BC')
     {
	$berechnen = implode(' ', array_slice($args,1));	
	if(strchr($berechnen,'"') or (strchr($berechnen,'`')))
	{
		cmd_send(prep_text("WARNING","DON'T HACK?"));
	}
	else
	{
		$aufruf='ulimit -t 10 -m 4000 -v 4000; nice -n 19 echo "'.$berechnen.'" | bc -l -i bc.conf -q';
		$ausgabe = `$aufruf`;
		if($ausgabe<>'')
		{	
			cmd_send(prep_text("bc",$ausgabe));
		}else
		{
			cmd_send(prep_text("bc",'Fehler im Aufruf oder Speicherüberlauf'));
		}
		
	}
     }

if(strtoupper($args[0]) == '!eBC')
     {
	$berechnen = implode(' ', array_slice($args,1));
	if(strchr($berechnen,'"') or (strchr($berechnen,'`')))
	{
		cmd_send(prep_text("WARNING","DON'T HACK?"));
	}
	else
	{
		`less bc.conf > temp`;
//		`less scientific_constants.bc >> temp`;
		`echo "$berechnen" >> temp`;
		`echo "quit" >> temp`;
		$ausgabe = `nice -n 19 bc temp -l -q`;
		//`rm temp`;
		cmd_send(prep_text("bc",$ausgabe));
	}
     }

//register commands 
if(strtoupper($args[0]) == "!COMMANDS")
{
	$COMMANDS=$COMMANDS.", !BC";
}
	

?>
